Alloy Analyzer+PVS in the Analysis and Verification of Alloy Specifications
نویسندگان
چکیده
This article contains two main contributions. On the theoretical side, it presents a novel complete proof calculus for Alloy. On the applied side we present Dynamite, a tool that combines the semiautomatic theorem prover PVS with the Alloy Analyzer. Dynamite allows one to prove an Alloy assertion from an Alloy specification using PVS, while using the Alloy Analyzer for the automated analysis of hypotheses introduced during the proof process. As a means to assess the usability of the tool, we present a complex case-study based on Zave’s Alloy model of addressing for interoperating networks.
منابع مشابه
Dynamite: Alloy Analyzer+PVS in the Analysis and Verification of Alloy Specifications
This article contains two main contributions. On the theoretical side, it presents a novel complete calculus for Alloy. On the applied side we present DYNAMITE, a tool that combines the semi-automatic theorem prover PVS with the Alloy Analyzer. DYNAMITE allows one to prove Alloy assertion from Alloy specifications, while using the Alloy Analyzer for the automated analysis of hypotheses introduc...
متن کاملMonotonicity Analysis Can Speed Up Verification
We introduce a strategy for the verification of relational specifications based on the analysis of monotonicity of variables within formulas. By comparing with the Alloy Analyzer, we show that for a relevant class of problems this technique outperforms analysis of the same problems using SAT-solvers, while consuming a fraction of the memory SAT-solvers require.
متن کاملApplications and extensions of Alloy: past, present and future
Alloy is a declarative language for lightweight modelling and analysis of software. The core of the language is based on first-order relational logic, which offers an attractive balance between analysability and expressiveness. The logic is expressive enough to capture the intricacies of real systems, but is also simple enough to support fully automated analysis with the Alloy Analyzer. The Ana...
متن کاملA Proof Assistant for Alloy Specifications
Alloy is a specification language based on a relational firstorder logic with built-in operators for transitive closure, set cardinality, and integer arithmetic. The Alloy Analyzer checks Alloy specifications automatically with respect to bounded domains. Thus, while suitable for finding counterexamples, it cannot, in general, provide correctness proofs. This paper presents Kelloy, a tool for v...
متن کاملFormal Validation of Behavioral Model using State Based and Event Based Approaches
A number of formal methods are available in literature for analysis and design of software as well as hardware systems. To choose a particular specification method, it depends on the character of the desired product. As the complexity of software increases, the need for reasoning about correct behaviour becomes more prominent. Formal methods are a set of techniques for analysis, verification, a...
متن کامل